Przejdź do zawartości

Tabula recta

Z Wikipedii, wolnej encyklopedii
Tabula recta

Tabula recta (łac. tabul recta) – kwadratowa tablica alfabetów, której kolejne wiersze tworzone są poprzez przesunięcie poprzedniego o jedną pozycje w lewo. Tablica wymyślona została przez niemieckiego mnicha Johannesa Trithemiusa w 1508 i użyta w szyfrze Trithemiusa.

Szyfr Tritemiusza

[edytuj | edytuj kod]

Szyfr został opublikowany przez Johannesa Trithemiusa w jego książce Polygraphia, która jest uznawana za pierwsze wydanie dotyczące kryptografii.

Trithemius użył tabula recta do zdefiniowania szyfru polialfabetycznego, co było równoznaczne z tarczą szyfrującą Leona Bartisa z wyjątkiem tego, że alfabety nie były pomieszane. Tabula recta jest często określana jako szyfr sprzed komputerów, wliczając szyfr Vigenère’a. Wszystkie szyfry polialfabetyczne oparte na szyfrze Cezara mogą być opisane hasłem tabula recta.

Tablicę tworzy się z 26 wierszy w każdym po 26 liter alfabetu w każdym wierszu przesuniętym o jedną pozycję (literę) w lewo. Otrzymujemy w ten sposób 26 różnych szyfrów Cezara.

Metoda ta usuwa z szyfrogramu częstotliwość występowania liter, tworząc pozornie ciąg przypadkowych znaków. Jednak jeżeli wiemy o tym, że użyty został ten szyfr, złamanie hasła nie stanowi problemu. Szyfr traci na bezpieczeństwie ze względu na złamanie podstawowej zasady Kerckhoffsa, czyli brak klucza.

Ulepszenia

[edytuj | edytuj kod]

W 1553 Giovan Battista Bellaso opracował ważne rozszerzenie metody Trithemiusa, nazywane szyfr Vigenère’a. Bellaso dodał klucz. Metoda ta jest nieprawdziwie przypisywana Blaise’owi de Vigenère’owi, który opublikował podobny algorytm symetryczny w 1586.

Stosowanie

[edytuj | edytuj kod]

Tablica zawiera w pierwszym wierszu litery alfabetu w oryginalnej kolejności, a następnie w każdym kolejnym wierszu litery alfabetu przesunięte o jedną kolejną pozycję w lewo. Cała tablica ma wymiary 26 × 26 (gdzie 26 to liczba liter w alfabecie łacińskim). Algorytm szyfru przewiduje, że w miejsce kolejnych liter tekstu jawnego podstawia odpowiednie litery z kolejnych wierszy tablicy. Po dojściu do ostatniego wiersza przechodzi się z powrotem do pierwszego wiersza. Każda litera tekstu jawnego jest więc zwiększana o liczbę pozycji wynikającą z aktualnego wiersza.

Bibliografia

[edytuj | edytuj kod]